{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## `K-Means++` from scratch!! 🚀 "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "from typing import List\n",
    "\n",
    "class KMeansPlusPlus:\n",
    "    \n",
    "    def __init__(self, n_clusters: int, max_iter: int = 100):\n",
    "        self.n_clusters = n_clusters\n",
    "        self.max_iter = max_iter\n",
    "        \n",
    "    def _initialize_centroids(self, X: np.ndarray) -> List[np.ndarray]:\n",
    "        \"\"\"Select initial cluster centroids using KMeans++ algorithm\"\"\"\n",
    "        centroids = []\n",
    "        # randomly select first centroid from data points\n",
    "        rand_idx = np.random.choice(X.shape[0])\n",
    "        centroids.append(X[rand_idx])\n",
    "        \n",
    "        # select remaining centroids using KMeans++ algorithm\n",
    "        for _ in range(self.n_clusters - 1):\n",
    "            dist_sq = np.array([min([np.linalg.norm(x-c)**2 for c in centroids]) for x in X])\n",
    "            probs = dist_sq / dist_sq.sum()\n",
    "            cumprobs = probs.cumsum()\n",
    "            r = np.random.rand()\n",
    "            for j, p in enumerate(cumprobs):\n",
    "                if r < p:\n",
    "                    i = j\n",
    "                    break\n",
    "            centroids.append(X[i])\n",
    "        return centroids\n",
    "    \n",
    "    def _assign_clusters(self, X: np.ndarray, centroids: List[np.ndarray]) -> np.ndarray:\n",
    "        \"\"\"Assign each data point to the nearest cluster centroid\"\"\"\n",
    "        clusters = np.zeros(X.shape[0])\n",
    "        for i, x in enumerate(X):\n",
    "            distances = [np.linalg.norm(x - c) for c in centroids]\n",
    "            cluster = np.argmin(distances)\n",
    "            clusters[i] = cluster\n",
    "        return clusters\n",
    "    \n",
    "    def _update_centroids(self, X: np.ndarray, clusters: np.ndarray) -> List[np.ndarray]:\n",
    "        \"\"\"Update cluster centroids based on the mean of data points assigned to each cluster\"\"\"\n",
    "        centroids = []\n",
    "        for i in range(self.n_clusters):\n",
    "            centroid = X[clusters == i].mean(axis=0)\n",
    "            centroids.append(centroid)\n",
    "        return centroids\n",
    "    \n",
    "    def fit(self, X: np.ndarray) -> None:\n",
    "        \"\"\"Fit the KMeans++ model to the data\"\"\"\n",
    "        centroids = self._initialize_centroids(X)\n",
    "        for i in range(self.max_iter):\n",
    "            clusters = self._assign_clusters(X, centroids)\n",
    "            new_centroids = self._update_centroids(X, clusters)\n",
    "            if np.allclose(centroids, new_centroids):\n",
    "                break\n",
    "            centroids = new_centroids\n",
    "        self.centroids_ = centroids\n",
    "        self.labels_ = self._assign_clusters(X, centroids)\n",
    "    \n",
    "    def predict(self, X: np.ndarray) -> np.ndarray:\n",
    "        \"\"\"Predict cluster labels for new data\"\"\"\n",
    "        return self._assign_clusters(X, self.centroids_)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "<frozen importlib._bootstrap>:241: RuntimeWarning: scipy._lib.messagestream.MessageStream size changed, may indicate binary incompatibility. Expected 56 from C header, got 64 from PyObject\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "from sklearn.datasets import make_blobs\n",
    "from sklearn.preprocessing import StandardScaler\n",
    "\n",
    "# Specifying the number of cluster our data should have\n",
    "n_components = 4\n",
    "\n",
    "X, true_labels = make_blobs(\n",
    "    n_samples=750, centers=n_components, cluster_std=0.4, random_state=0\n",
    ")\n",
    "\n",
    "plt.title(\"Unclustered Data\")\n",
    "plt.scatter(X[:, 0], X[:, 1], s=15)\n",
    "plt.xticks([])\n",
    "plt.yticks([])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Smarter initialization of cluster centroids!! "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAggAAAGeCAYAAADxK/mgAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAABkaklEQVR4nO3dfXwU5b03/s/MJGwSDCFhASERKfwsigSpLIYSmoAUTHwAzrlbrT3eBVtUimIraW3PabC1pI8euM8RLb5ObX0o57TetvcRekogoJDUVVJCS0UQbAGb5gEhJEJ4CsnO/P5YZtmduWZ29im7m3zeffmi7M7OzO4mXN/rur7X95I0TdNAREREFERO9g0QERFR6mGAQERERCYMEIiIiMiEAQIRERGZMEAgIiIiEwYIREREZMIAgYiIiEwYIBAREZEJAwQiIiIyYYBAg9Z3vvMdSJKEjo4O4fNTpkzBnDlzEn79RNmyZQu+853vJOz8sZIkKez9ffDBB5AkKfBfZmYmRowYgRkzZuCxxx7DgQMHor7++fPn8Z3vfAe7du2K+hxEAxkDBKIBasuWLXjyySeTfRtxsXLlSrz99tuor6/HL37xCyxevBibN2/GTTfdhKeeeiqqc54/fx5PPvkkAwQiCxnJvgEiSi/nz59HTk5Ov15z3LhxmDlzZuDvt99+O1atWoV//Md/xOOPP44pU6agsrKyX++JaKDjCAKRQ7t27YIkSfjlL3+Jb33rWxg7diyGDRuGT3/60zh8+LDp+K1bt2LevHnIy8tDTk4ObrjhBvzgBz+wvYbVsPv48eOxdOnSwN/Pnz+Pr33ta/jYxz6GrKwsFBQUwOPx4Je//CUAYOnSpXj22WcD59T/++CDDwAAmqbhJz/5CaZNm4bs7Gzk5+fjM5/5DI4ePRpy3Tlz5mDKlCloaGjArFmzkJOTgy9+8YsAgDNnzgTuYciQISgsLMRXv/pVnDt3LuQcZ86cwQMPPIARI0bgqquuQkVFBd5//33bz8GJ7Oxs/OxnP0NmZmbIKMLJkyexYsUKTJ48GVdddRVGjRqFW2+9Fb///e8Dx3zwwQcYOXIkAODJJ58MfD76Z/zXv/4V999/P6677jrk5OSgsLAQd911F/bv3x/zfROlC44gEEXoX/7lX1BaWornn38eZ86cwTe+8Q3cddddeO+996AoCgDgZz/7GR544AGUl5fjueeew6hRo/D+++/j3Xffjcs9rFq1Cr/4xS9QU1ODT3ziEzh37hzeffddnDp1CgCwevVqnDt3Dr/+9a/x9ttvB143ZswYAMBDDz2EF198EY8++ih+9KMfobOzE9/97ncxa9Ys/PnPf8bo0aMDr2lvb8d9992Hxx9/HN///vchyzLOnz+P8vJytLS04F/+5V8wdepUHDhwAE888QT279+PHTt2QJIkaJqGxYsX46233sITTzyBGTNmwOv1xq23P3bsWEyfPh1vvfUW+vr6kJGRgc7OTgDAt7/9bVx99dU4e/Ys/vu//xtz5szB66+/jjlz5mDMmDHYunUrKioq8KUvfQnLli0DgEDQ0NbWhhEjRuCHP/whRo4cic7OTrz00ksoKSnBn/70J0yaNCku90+U0jSiQerb3/62BkA7efKk8Pkbb7xRKy8vD/x9586dGgDt9ttvDznu//7f/6sB0N5++21N0zStu7tbGzZsmDZ79mxNVdWw1w8GQPv2t79tOvbaa6/VlixZEvj7lClTtMWLF9u+v4cffth0fk3TtLffflsDoK1duzbk8b///e9adna29vjjjwceKy8v1wBor7/+esixP/jBDzRZlrU9e/aEPP7rX/9aA6Bt2bJF0zRNq62t1QBo//7v/x5y3Pe+9z3L9xrs2LFjGgDtqaeesjzmnnvu0QBoH374ofD5vr4+rbe3V5s3b572D//wD4HHT5486ege9HNcunRJu+6667THHnss7PFEAwGnGIgitHDhwpC/T506FQDwt7/9DQDw1ltv4cyZM1ixYkXCVinccsstqK2txTe/+U3s2rULFy5ccPza//mf/4EkSbjvvvvQ19cX+O/qq6/GTTfdZEray8/Px6233mo6x5QpUzBt2rSQc9x2222QJClwjp07dwIA/umf/ink9Z///Ocjf9MWNE0zPfbcc8/h5ptvRlZWFjIyMpCZmYnXX38d7733nqNz9vX14fvf/z4mT56MIUOGICMjA0OGDMFf/vIXx+cgSncMEGjQysjwz7D5fD7h8319fcjMzDQ9PmLEiJC/u1wuAAg00idPngQAFBUVxe1ejZ5++ml84xvfwGuvvYa5c+eioKAAixcvxl/+8pewr/3www+haRpGjx6NzMzMkP92795tWvapT0sYz/HOO++YXp+bmwtN0wLnOHXqFDIyMkyf2dVX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\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "kmeans_pp = KMeansPlusPlus(n_clusters=4)\n",
    "\n",
    "\n",
    "centroids = kmeans_pp._initialize_centroids(X)\n",
    "\n",
    "centroids = np.array(centroids)\n",
    "\n",
    "plt.title(\"Unclustered Data\")\n",
    "plt.scatter(X[:, 0], X[:, 1], s=15, color='green')\n",
    "plt.scatter(centroids[:, 0], centroids[:, 1], marker='*', s=200, color='red')\n",
    "plt.xticks([])\n",
    "plt.yticks([])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Perform K-Means++ clustering on the above data 🚀 "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAggAAAGeCAYAAADxK/mgAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAABeQklEQVR4nO3deZgU1bk/8G9Vz/QsMCswwyKb7AyLIAq4EcGFaNZrNMZEERMDuP3MVaMx4JIQjJLkJvGqqFEwJuYm3iQmxqhBMLgNCndQYEYUEEQFZhhgFhhm7fr9UVM91VXnVFXv3dPfz318CD3VVdU9PPe8dc77vkfRNE0DERERkYma7BsgIiKi1MMAgYiIiGwYIBAREZENAwQiIiKyYYBARERENgwQiIiIyIYBAhEREdkwQCAiIiIbBghERERkwwCByKOtW7di4cKFGDlyJHJzc9G3b19Mnz4dDzzwAI4cORI87nOf+xw+97nPxe0+Hn74YaxZsyZu54/Gv//9byiKgn//+9+Ox61ZswaKogT/y83NxcCBA3HuuefivvvuQ11dXcT3UFNTg3vuuQd79+6N+BxExACByJPHH38cp556KjZt2oTbbrsNL730Ev7617/i0ksvxapVq/Dtb387YfeSygFCuFavXo3KykqsXbsWDz30EE455RTcf//9mDBhAl555ZWIzllTU4N7772XAQJRlLKSfQNEqa6yshJLlizB+eefj+eeew45OTnBn51//vm45ZZb8NJLLyXxDqOnaRpaW1uRl5eX0OtOmjQJM2bMCP79kksuwfe+9z2cddZZ+I//+A/s3LkT5eXlCb0nItJxBoHIxYoVK6AoCh577LGQ4MDg9/vxpS99Sfp+2bT73r17oShKyGzARx99hMsvvxyDBw9GTk4OysvLMW/ePLz77rsAgBEjRqC6uhobNmwITs+PGDEi+P6mpibceuutGDlyJPx+P4YMGYKbb74Zx48fD7m2oii44YYbsGrVKkyYMAE5OTl46qmnAAA7d+7EFVdcgbKyMuTk5GDChAl46KGHbJ9rx44dmD9/PvLz89G/f38sXrwYzc3NLt+mu2HDhuHnP/85mpub8eijjwZf37x5My6//HKMGDECeXl5GDFiBL7xjW/g448/Dh6zZs0aXHrppQCAc889N/gdGd/x2rVr8eUvfxknnXQScnNzMXr0aCxatAj19fVR3zdRb8MZBCIHXV1dWL9+PU499VQMHTo07te76KKL0NXVhQceeADDhg1DfX093nrrLTQ0NAAA/vrXv+JrX/saioqK8PDDDwNAMGhpaWnBnDlz8Omnn+LOO+/ElClTUF1djbvuugvbtm3DK6+8AkVRgtd67rnn8Prrr+Ouu+7CwIEDUVZWhpqaGpxxxhnBQXrgwIF4+eWXcdNNN6G+vh533303AKC2thZz5sxBdnY2Hn74YZSXl+P3v/89brjhhph9Dz6fD6+99lrwtb1792LcuHG4/PLLUVpaigMHDuCRRx7BaaedhpqaGvTv3x8XX3wxVqxYgTvvvBMPPfQQpk+fDgAYNWoUAGD37t2YPXs2vvOd76CoqAh79+7FL37xC5x11lnYtm0bsrOzY3L/RL2CRkRSBw8e1ABol19+uef3zJkzR5szZ07w76+++qoGQHv11VdDjtuzZ48GQFu9erWmaZpWX1+vAdB++ctfOp6/oqIi5PyG++67T1NVVdu0aVPI6//7v/+rAdD++c9/Bl8DoBUVFWlHjhwJOfbCCy/UTjrpJK2xsTHk9RtuuEHLzc0NHn/77bdriqJo7777bshx559/vvCzWq1evVoDYLtXs/Lycm3ChAnSn3d2dmrHjh3T+vTpo/3qV78Kvv7ss896uodAIKB1dHRoH3/8sQZA+9vf/uZ4PFGm4RIDUYooLS3FqFGjsHLlSvziF7/Ali1bEAgEPL//H//4ByZNmoRTTjkFnZ2dwf8uvPBC4RLH3LlzUVJSEvx7a2sr1q1bh69+9avIz88POcdFF12E1tZWbNy4EQDw6quvoqKiAlOnTg055xVXXBH5F2ChaVrI348dO4bbb78do0ePRlZWFrKystC3b18cP34c77//vqdz1tXVYfHixRg6dCiysrKQnZ2N4cOHA4DncxBlCgYIRA769++P/Px87NmzJ+7XUhQF69atw4UXXogHHngA06dPx4ABA3DTTTd5Wtuvra3F1q1bkZ2dHfJfQUEBNE2zrbMPGjQo5O+HDx9GZ2cnHnzwQds5LrroIgAInuPw4cMYOHCg7R5Er0Xi+PHjOHz4MAYPHhx87YorrsB///d/4zvf+Q5efvllvPPOO9i0aRMGDBiAEydOuJ4zEAjgggsuwF/+8hd8//vfx7p16/DOO+8Egx4v5yDKJMxBIHLg8/kwb948vPjii/j0009x0kknhX2O3NxcAEBbW1vI66LEuOHDh+OJJ54AAHz44Yf405/+hHvuuQft7e1YtWqV43X69++PvLw8PPnkk9Kfm5nzEQCgpKQEPp8PV155Ja6//nrhOUaOHAkA6NevHw4ePGj7uei1SLzwwgvo6uoK9pNobGzEP/7xD9x999244447gse1tbWF9KBwsn37drz33ntYs2YNFixYEHx9165dMblnot6GMwhELn7wgx9A0zRce+21aG9vt/28o6MDzz//vPT9RpXB1q1bQ17/+9//7njdsWPHYunSpZg8eTKqqqqCr+fk5Aifdr/whS9g9+7d6NevH2bMmGH7z1ztIJKfn49zzz0XW7ZswZQpU4Tn6NevHwC9QqC6uhrvvfdeyDmeeeYZx2t4sW/fPtx6660oKirCokWLAOjBjKZptiqS3/zmN+jq6gp5zTjG+h0ZAZH1HOZKCSLqwRkEIhezZ8/GI488guuuuw6nnnoqlixZgoqKCnR0dGDLli147LHHMGnSJHzxi18Uvn/gwIE477zzcN9996GkpATDhw/HunXr8Je//CXkuK1bt+KGG27ApZdeijFjxsDv92P9+vXYunVryFPz5MmT8T//8z/44x//iJNPPhm5ubmYPHkybr75Zvz5z3/GOeecg+9973uYMmUKAoEA9u3bh3/961+45ZZbMHPmTMfP+qtf/QpnnXUWzj77bCxZsgQjRoxAc3Mzdu3aheeffx7r168HANx888148skncfHFF2P58uXBKoYdO3aE9d1u3749mOdQV1eH119/HatXr4bP58Nf//pXDBgwAABQWFiIc845BytXrkT//v0xYsQIbNiwAU888QSKi4tDzjlp0iQAwGOPPYaCggLk5uZi5MiRGD9+PEaNGoU77rgDmqahtLQUzz//PNauXRvWPRNljKSmSBKlkXfffVdbsGCBNmzYMM3v92t9+vTRpk2bpt11111aXV1d8DhrFYOmadqBAwe0r33ta1ppaalWVFSkfetb39I2b94cUsVQW1urXX311dr48eO1Pn36aH379tWmTJmi/dd//ZfW2dkZPNfevXu1Cy64QCsoKNAAaMOHDw/+7NixY9rSpUu1cePGaX6/XysqKtImT56sfe9739MOHjwYPA6Adv311ws/5549e7RrrrlGGzJkiJadna0NGDBAO+OMM7Tly5eHHFdT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\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Initialize KMeansPlusPlus\n",
    "kmeans_pp = KMeansPlusPlus(n_clusters=4)\n",
    "\n",
    "# fit the data & predict cluster labels\n",
    "kmeans_pp.fit(X)\n",
    "predicted_labels = kmeans_pp.predict(X)\n",
    "\n",
    "\n",
    "# Based on predicted_labels, we assign each data point distinct colour\n",
    "colors = [\"#4EACC5\", \"#FF9C34\", \"#4E9A06\", \"m\"]\n",
    "for k, col in enumerate(colors):\n",
    "    cluster_data = predicted_labels == k\n",
    "    plt.scatter(X[cluster_data, 0], X[cluster_data, 1], s=15)\n",
    "\n",
    "    \n",
    "plt.title(\"Clustered Data\")\n",
    "plt.xticks([])\n",
    "plt.yticks([])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "env_twitter",
   "language": "python",
   "name": "env_twitter"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
